$(function() {
	$.each($('#relatedCol li'), function(i) {
		$('#li_' + i).bind('click', function() {
			if ($(this).attr('class') == 'mouse_click') {
				$(this).removeClass().addClass('mouse_cancle');
				// 去掉其子类颜色
				changeChildrenStat(i, 'mouse_cancle');
				// 查找其父类的子类，如果父类的子类都处于未被选中状态，则去掉父类颜色
				changeParentClickStat(i, 'mouse_cancle');
			} else if ($(this).attr('class') == 'mouse_cancle') {
				$(this).removeClass().addClass('mouse_click');
				// 将其父类变成灰色  
				changeParentCancleStat(i, 'mouse_click');
				// 其子类变成灰色
				changeChildrenStat(i, 'mouse_click');
			}
		});
	});
});
function checkParentIndex(indexValue) {
	if (indexValue != null && jQuery.trim(indexValue) != '') {
		var arr = jQuery.trim(indexValue).split(',');
		if (arr.length >= 3) {
			if (arr[1] != null && jQuery.trim(arr[1]) != '') {
				return 1;
			} else {
				// 父类为''
				return 0;
			}
		} else {
			alert('value出现错误');
			return -1;

		}
	} else {
		return -1;
	}
};

function checkChildrenIndex(indexValue) {
	if (indexValue != null && jQuery.trim(indexValue) != '') {
		var arr = jQuery.trim(indexValue).split(',');
		if (arr.length == 3) {
			// 无子类
			return 0;
		} else if (arr.length > 3) {
			return 1;
		} else {
			alert('value出现错误');
			return -1;
		}
	} else {
		return -1;
	}
};

// cancle--->click
function changeParentCancleStat(j, toStat) {

	var valueIndex = $('#li_hid_' + j).val();
	//alert(valueIndex);
	var checkResult = checkParentIndex(valueIndex);
	if (checkResult == 1) {
		var valueArray = valueIndex.split(",");
		$('#li_' + valueArray[1]).removeClass().addClass(toStat);
		//alert(valueArray[1] + "\t" + toStat);
		changeParentCancleStat(valueArray[1], toStat);
	}
	//else {
	//	alert(checkResult);
	//}
}

// click--> cancle
function changeParentClickStat(j, toStat) {

	// 找到其父类
	var valueIndex = $('#li_hid_' + j).val();
	var checkResult = checkParentIndex(valueIndex);
	// 有父类
	if (checkResult == 1) {
		var valueArray = valueIndex.split(",");
		valueIndex = $('#li_hid_' + valueArray[1]).val();
		// 查找子类是否有click状态的，如果有则停止，没有则继续查找
		checkResult = checkChildrenIndex(valueIndex);
		// 有子类
		if (checkResult == 1) {
			var valueArray1 = valueIndex.split(",");
			var k = 2;
			for (; k < valueArray1.length - 1; k++) {
				if ($('#li_' + valueArray1[k]).attr('class') == 'mouse_click') {
					break;
				}
			}
			;
			// 没有被选中的，父类颜色取消
			if (k == valueArray1.length - 1) {
				$('#li_' + valueArray[1]).removeClass().addClass(toStat);
				changeParentClickStat(valueArray[1], toStat);
			}
		}
	}
	//else {
	//	alert(checkResult);
	//}
}

function changeChildrenStat(j, toStat) {

	var valueIndex = $('#li_hid_' + j).val();
	var checkResult = checkChildrenIndex(valueIndex);
	if (checkResult == 1) {
		var valueArray = valueIndex.split(",");
		for ( var k = 2; k < valueArray.length - 1; k++) {
			$('#li_' + valueArray[k]).removeClass().addClass(toStat);
			//alert(valueArray[k] + "\t" + toStat);
			changeChildrenStat(valueArray[k], toStat);
		}
	}
	//else {
	//	alert(checkResult);
	//}
}